<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                "http://www.w3.org/TR/REC-html40/loose.dtd">
<html>
<head>
  <title>Description of clipConvexPolygon3dHP</title>
  <meta name="keywords" content="clipConvexPolygon3dHP">
  <meta name="description" content="CLIPCONVEXPOLYGON3DHP clip a convex 3D polygon with Half-space">
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <meta name="generator" content="m2html &copy; 2003 Guillaume Flandin">
  <meta name="robots" content="index, follow">
  <link type="text/css" rel="stylesheet" href="../../m2html.css">
</head>
<body>
<a name="_top"></a>
<div><a href="../../index.html">Home</a> &gt;  <a href="#">imael</a> &gt; <a href="#">geom3d</a> &gt; clipConvexPolygon3dHP.m</div>

<!--<table width="100%"><tr><td align="left"><a href="../../index.html"><img alt="<" border="0" src="../../left.png">&nbsp;Master index</a></td>
<td align="right"><a href="index.html">Index for .\imael\geom3d&nbsp;<img alt=">" border="0" src="../../right.png"></a></td></tr></table>-->

<h1>clipConvexPolygon3dHP
</h1>

<h2><a name="_name"></a>PURPOSE <a href="#_top"><img alt="^" border="0" src="../../up.png"></a></h2>
<div class="box"><strong>CLIPCONVEXPOLYGON3DHP clip a convex 3D polygon with Half-space</strong></div>

<h2><a name="_synopsis"></a>SYNOPSIS <a href="#_top"><img alt="^" border="0" src="../../up.png"></a></h2>
<div class="box"><strong>function poly2 = clipConvexPolygon3dHP(poly, plane) </strong></div>

<h2><a name="_description"></a>DESCRIPTION <a href="#_top"><img alt="^" border="0" src="../../up.png"></a></h2>
<div class="fragment"><pre class="comment">CLIPCONVEXPOLYGON3DHP clip a convex 3D polygon with Half-space

   POLY2 = clipConvexPolygon3dHP(POLY, PLANE)
   POLY is a [Nx3] array of points, and PLANE is given as:
   [x0 y0 z0 dx1 dy1 dz1 dx2 dy2 dz2].
   The result POLY2 is also an array of 3d points, sometimes smaller than
   poly, and that can be [0x3] (empty polygon).

   POLY2 = clipConvexPolygon3dHP(POLY, PT0, NORMAL)
   uses plane with normal NORMAL and containing point PT0.

   There is a problem for non-convex polygons, as they can be clipped in
   several polygons. Possible solutions:
   - create another function 'clipConvexPolygon3dPlane' or
       'clipConvexPolygon3d', using a simplified algorithm
   - returns a list of polygons instead of a single polygon,
   - in the case of one polygon as return decide what to return
   - and rename this function to 'clipPolygon3d'

   See also:
   <a href="polygons3d.html" class="code" title="function polygons3d(varargin)">polygons3d</a>, <a href="polyhedra.html" class="code" title="function polyhedra(varargin)">polyhedra</a>

 ------
 Author: David Legland
 e-mail: david.legland@nantes.inra.fr
 Created: 2007-01-05
 Copyright 2007 INRA - BIA PV Nantes - MIAJ Jouy-en-Josas.</pre></div>

<!-- crossreference -->
<h2><a name="_cross"></a>CROSS-REFERENCE INFORMATION <a href="#_top"><img alt="^" border="0" src="../../up.png"></a></h2>
This function calls:
<ul style="list-style-image:url(../../matlabicon.gif)">
<li><a href="createLine3d.html" class="code" title="function line = createLine3d(varargin)">createLine3d</a>	CREATELINE3D create a line with various inputs.</li><li><a href="intersectLinePlane.html" class="code" title="function point = intersectLinePlane(line, plane)">intersectLinePlane</a>	INTERSECTLINEPLANE return intersection between a plane and a line</li><li><a href="isBelowPlane.html" class="code" title="function below = isBelowPlane(point, varargin)">isBelowPlane</a>	ISBELOWPLANE test whether a point is below or above a plane</li></ul>
This function is called by:
<ul style="list-style-image:url(../../matlabicon.gif)">
<li><a href="clipConvexPolyhedronHP.html" class="code" title="function [nodes2 faces2] = clipConvexPolyhedronHP(nodes, faces, plane)">clipConvexPolyhedronHP</a>	CLIPCONVEXPOLYHEDRONHP clip a convex polyhedron by a plane</li></ul>
<!-- crossreference -->



<hr><address>Generated on Fri 05-Feb-2010 11:20:41 by <strong><a href="http://www.artefact.tk/software/matlab/m2html/">m2html</a></strong> &copy; 2003</address>
</body>
</html>